
// Promise封装Ajax
function ajax(_url, _data, _method) {
  // 设置GET请求为默认请求
  let method = _method || "GET";
  // POST请求需要在send里面传数据，GET请求就直接默认为null
  let data = _data || null;

  // 返回Promise对象,才能.then
  return new Promise((resolve, reject) => {
    // 实例化一个XMLHttpRequest
    let xhr = new XMLHttpRequest();

    // 处理GET的url参数，如果请求方式method的是GET，就用get的地址，要不然用post
    if (method.toUpperCase() == "GET") {
      let str = "?";
      // 处理get请求的参数
      for (let k in data) {
          str += `${k}=${data[k]}&`;
      };
      str = str.slice(0, -1);
      xhr.open(method, _url + str);
      // let str = "?";
      // for (let k in data) {
      //   str += `${k}=${data[k]}&`;
      // }
      // str = str.slice(0, -1);

      // // 设置get请求地址
      // xhr.open(method, _url + str);
    } else {
      xhr.open(method, _url);
    }

    // 设置默认请求头
    // 设置请求头为JSON格式
    xhr.setRequestHeader("Content-Type", "application/json");
    xhr.send(JSON.stringify(data));
    // 监听状态
    xhr.addEventListener("readystatechange", () => {
      if (xhr.readyState == 4) {
        if (xhr.status == 200) {
          // console.log(xhr.responseText); //获取后台的文本格式
          resolve(JSON.parse(xhr.responseText)); // 将后台返回的文本转成JSON对象
        } else {
          // 拒绝
          reject(JSON.parse(xhr.responseText));
        }
      }
    });
  });
}



      // // POST请求
      // let api1 = "http://studentback.dfbuff.xyz/postMethod";
      // let data1 = { type: "图片" };
      // let api2 = "http://studentback.dfbuff.xyz/getMethod";
      // let data2 = { type: "冷笑话" };

      // ajax(api1, data1, "POST")
      //   .then((res) => {
      //     console.log(res);
      //     return ajax(api2, data2, "GET");
      //   })
      //   .then((res) => {
      //     console.log(res);
      //   })
      //   .catch((err) => {
      //     console.log(err);
      //   });

      // // 获取GET请求
      // ajax("http://studentback.dfbuff.xyz/getImgs")
      //   .then((res) => {
      //     console.log(res);
      //     return ajax("http://studentback.dfbuff.xyz/getImgs");
      //   })
      //   .catch((err) => {
      //     console.log(err);
      //   });
